在区块链中应用了两个最重要的数据加密安全技术,一个是非对称加密技术,一个是哈希计算。
对称加密只有一个密码,加密解密的密码完全相同,因而当我们使用了一个密码加密数据后,把数据传送给接收方,要使接收方能使用数据,则必须同时将加密密码传送给接收方。加密密码很容易在传输途中被窃取,从而使加密失效,因此对称密钥不适用通信环境。
而非对称加密,有一个密钥对,一个称为公钥,一个称为私钥,在通信网络中,我们可以向所有通信方广而告知公钥,但私钥仅为自已掌握,就象我们可以向全世界广而告之我们的邮箱地址,但邮箱地址仅为我们自已掌握。
发送方使用接收方的公钥加密,可以确保加密数据仅能为掌握该公钥对应的私钥的接收方能解密使用。同时,发送方使用自身的私钥对数据进行签名,接收方仅能通过发送方的公钥进行解签名,从而验证数据确实是由发送方所发出。
非对称密钥体制是在一个去中心的网络通信环境中,建立了一个以用户公钥为账户地址的公共账本,使通信双方无需对其物理身份信任即可与其进行价值交易,如数字资产的转移、交换,从而实现了区块链的去信任技术特征。
区块链网络整体而言是一个去中心化的 P2P 网络,没有绝对的中心控制点,因此具备自由、民主、开放的网络特征,但同时区块链又通过建立网络中大家均认可的共识机制,又确保了网络数据账本的一致性。
这正如我们现实社会生活中,既要讲民主又要讲集中一样,只讲民主不讲集中,社会会陷入混乱;而只讲集中不讲民主,社会又会缺乏活力,不利大众参与及创新。而区块链是在去中心的基础上实现了网络数据的集中,这一点非常的不易,也是区块链之所以具有重要价值与魅力的核心所在,因而去中心是区块链的核心技术特征。
区块链还应用了一项数据加密安全技术即哈希计算,哈希计算的原理是同一份数据经过哈希计算后可以获理一个固定长度的哈希码,若原始数据中的任一改变,即使改变了一个小小的标点符号,也会导至哈希码的大不相同。
因此,数据一旦经过哈希计算获得了哈希码,除非使用完全相同的数据来计算,否则不能获得同一哈希码。
因此哈希码我们也常称为数据指纹,即该哈希码可以唯一代表其原始数据,这使我们通常使用哈希码来对原始数据进行验证,以防止数据被篡改。
在区块链中,我们每一个区块的区块头,专门有一个字段用于存储前一区块的哈希码,因此当前一区块的哈希码被确认和封装进入后一区块后,前一区块的数据即被确认,并不能更改,并且我们可以通过最新的区块一直追溯到创始区块,并通过对区块的哈希计算验证,确保区块中的每一份数据没有被篡改过。区块链的这个数据记录特征,使其具有了数据防篡改,并可以追溯历史的技术特征。